package com.ecloud.support.generator.custom;

import java.io.File;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ecloud.common.base.model.BasePo;

/**
 * 静态常量
 *
 * @author LiuGangQiang Create in 2021/06/08
 */
public class CustomerConstVal {
    public final static String SEPARATOR = File.separator;
    public static final String PATH = System.getProperty("user.dir") + CustomerConstVal.SEPARATOR;
    public final static String DEFAULT_TEMPLATE_PATH = "classpath:templates/*";
    public final static String PKG_SPLIT = "[.]";
    public final static String PKG_SPLIT_REPLACE = ".";
    public final static String OUT_FILE_SUFFIX = ".zip";
    public final static String CHARSET_UTF8 = "UTF-8";
    public final static String HEADER_ATTACHMENT = "attachment";
    public final static String HTTP_CONNECTION_CLOSE = "close";

    public final static String CONTROLLER_JAVA_VM = "controller.java.vm";
    public final static String ENTITY_JAVA_VM = "entity.java.vm";
    public final static String MAPPER_JAVA_VM = "mapper.java.vm";
    public final static String MAPPER_XML_VM = "mapper.xml.vm";
    public final static String SERVICE_JAVA_VM = "service.java.vm";
    public final static String SERVICEIMPL_JAVA_VM = "serviceImpl.java.vm";
    public final static String DTO_JAVA_VM = "dto.java.vm";
    public final static String VO_JAVA_VM = "vo.java.vm";
    public final static String CONVERT_JAVA_VM = "convert.java.vm";

    public final static String JAVA_SUFFIX = ".java";
    public final static String DTO_SUFFIX = "Dto";
    public final static String VO_SUFFIX = "Vo";
    public final static String CONVERT_SUFFIX = "Convert";

    public final static String TABLE_KEY = "table";
    public final static String DTO_NAME = "dto";
    public final static String VO_NAME = "vo";
    public final static String CONVERT_NAME = "convert";

    public final static String CUSTOMER_CONFIG_NAME = "name";
    public final static String CUSTOMER_CONFIG_PCKS = "pcks";
    public final static String CUSTOMER_CONFIG_SUPER = "superClass";
    public final static String CUSTOMER_CONFIG_PCK = "packageName";

    public final static Class<?>[] DTO_REMOVE_CLASS = new Class[] { BasePo.class, TableName.class, TableField.class };
    public final static Class<?>[] VO_REMOVE_CLASS = new Class[] { BasePo.class, TableName.class, TableField.class };
    public final static Class<?>[] CONVERT_REMOVE_CLASS = new Class[] { BasePo.class, TableName.class, TableField.class };

    public static final String DATE_FORMAT = "yyyy/MM/dd";
}
